//
//  DrawUtils.h
//  OpenGLES_03
//
//  Created by Keisuke Hata on 09/12/24.
//  Copyright 2009 Keisuke Hata. All rights reserved.
//
#import <OpenGLES/EAGL.h>
#import <OpenGLES/EAGLDrawable.h>
#import <Foundation/Foundation.h>
#import <OpenGLES/ES1/gl.h>
#import <Foundation/Foundation.h>
#import "Texture2D.h"
#import "GLESData.h"
#import "GLESPrim.h"

@interface DrawUtils : NSObject {

}

+ (void) drawWithTexture3D : (GLVector3D)vec 
				imageAnchor:(GLVector3D)anchor 
				imageRotate:(GLVector3D)rotate 
				imageAlpha:(float)alpha 
				imageScale:(CGSize)scale 
				texture:(Texture2D *)tex 
				isPVRTC:(BOOL)pvrflg;

+ (void) drawWithTexture2D : (CGPoint)pos 
				imageAnchor:(CGPoint)anchor 
				imageAngleZ:(float)angleZ 
				imageAlpha:(float)alpha 
				imageScale:(CGSize)scale 
				texture:(Texture2D *)tex 
				isPVRTC:(BOOL)pvrflg;

+ (void) drawWithTexture2DFBO : (CGPoint)pos 
				   imageAnchor:(CGPoint)anchor 
					imageAlpha:(float)alpha 
				   imageOffset:(CGPoint)offset
					 imageSize:(CGSize)size 
					   texture:(Texture2D *)tex 
					   isPVRTC:(BOOL)pvrflg;
	
+ (void) drawWithTexture2DAtlas : (CGPoint)pos 
					 imageAnchor:(CGPoint)anchor 
					 imageAngleZ:(float)angleZ 
					  imageAlpha:(float)alpha 
					  imageScale:(CGSize)scale 
					 imageOffset:(CGPoint)offs
					   imageSize:(CGSize)size
						 texture:(Texture2D *)tex 
						 isPVRTC:(BOOL)pvrflg;
	
+ (void) drawWithTexture2DWithUVScale : (CGPoint)pos 
						imageAnchor:(CGPoint)anchor 
						imageAngleZ:(float)angleZ 
						imageAlpha:(float)alpha 
						imageScale:(CGSize)scale 
						imageUVScale:(float)uvs 
						texture:(Texture2D *)tex 
						isPVRTC:(BOOL)pvrflg;

@end
